package com.bite.system.Service;

import com.bite.system.DTO.ExamAddDTO;
import com.bite.system.DTO.ExamDTO;
import com.bite.system.DTO.ExamEditDTO;
import com.bite.system.DTO.ExamQuestionDTO;
import com.bite.system.VO.ExamDetailVO;
import domain.R;
import domain.TableDataInfo;

public interface ExamService {
    TableDataInfo list(ExamDTO examDTO);

    R<String> add(ExamAddDTO examAddDTO);

    R<Void> addQuestion(ExamQuestionDTO examQuestionDTO);

    R<ExamDetailVO> detail(Long examId);

    R<Void> edit(ExamEditDTO examEditDTO);

    R<Void> delete(Long examId, Long questionId);

    R<Void> deleteExamQuestion(Long examId);

    R<Void> publish(Long examId);

    R<Void> quash(Long examId);
}
